Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность/Надёжность
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Последняя версия Следующая версия справа и слева | ||
drakon-sxemy_aleksandra_araptanova [2014/12/12 08:59] Александр Араптанов |
drakon-sxemy_aleksandra_araptanova [2015/05/26 21:21] Паронджанов В. Д. |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | [[http://forum.oberoncore.ru/viewforum.php?f=138 |Язык ДРАКОН и система «1С:Предприятие»]] | ||
+ | [[http://isdrakon.forum2x2.ru/|Форум языка ДРАКОН и 1С]] | ||
+ | |||
====== Дракон-схемы в 1С. Программирование, внедрение, обучение, поддержка ====== | ====== Дракон-схемы в 1С. Программирование, внедрение, обучение, поддержка ====== | ||
Строка 13: | Строка 16: | ||
- Какую "коробку" купить, чтобы дорабатывать меньше? | - Какую "коробку" купить, чтобы дорабатывать меньше? | ||
- Наши "доработки" полностью устроят заказчика? | - Наши "доработки" полностью устроят заказчика? | ||
- | - "Доработка" написана правильно? Может это плохой код? | + | - "Доработка" написана правильно? Может это "плохой" код? |
- Если доработали, сколько будет стоить обновление? | - Если доработали, сколько будет стоить обновление? | ||
- Как обучить людей быстро и понятно работать в новой системе? | - Как обучить людей быстро и понятно работать в новой системе? | ||
Строка 26: | Строка 29: | ||
Язык ДРАКОН - большинство вышеизложенных вопросов он решает, или решает частично. | Язык ДРАКОН - большинство вышеизложенных вопросов он решает, или решает частично. | ||
+ | |||
Есть и свои минусы по сравнению со традиционным подходом программирования 1С: | Есть и свои минусы по сравнению со традиционным подходом программирования 1С: | ||
Строка 42: | Строка 46: | ||
Поехали. | Поехали. | ||
Про сам язык (что это за схемы, как их читать и вообще) смотри тут: http://drakon.su/jazyk/start | Про сам язык (что это за схемы, как их читать и вообще) смотри тут: http://drakon.su/jazyk/start | ||
- | |||
- | Пролил свет на эти знания глубокоуважаемый Паронджанов Владимир Даниелович, очень умный и уважаемый мною человек, ОГРОМНОЕ ему спасибо. | ||
Язык ДРАКОН остался бы языком с непонятной областью применения, если бы не было удобных "рисовалок" для простых смертных, для меня и для тебя. Обзор и сравнение этих продуктов делать в этой статье не буду (может позже :-)). | Язык ДРАКОН остался бы языком с непонятной областью применения, если бы не было удобных "рисовалок" для простых смертных, для меня и для тебя. Обзор и сравнение этих продуктов делать в этой статье не буду (может позже :-)). | ||
Строка 61: | Строка 63: | ||
Надеюсь 1С-ка у тебя стоит? | Надеюсь 1С-ка у тебя стоит? | ||
- | ==== 1С-ка по быстрому ==== | + | ===== 1С-ка "по быстрому" ===== |
Если тебя не волнует всякая муть как "дружить" пользователей с 1С. И тебе просто хочется побыстрей начать "кодить" в Драконе... . | Если тебя не волнует всякая муть как "дружить" пользователей с 1С. И тебе просто хочется побыстрей начать "кодить" в Драконе... . | ||
Вот тебе инструкция, читать слева на право: | Вот тебе инструкция, читать слева на право: | ||
+ | |||
{{:1s_araptanov:kartinki:sozdanie_lista_dlja_1s.png?200|}} | {{:1s_araptanov:kartinki:sozdanie_lista_dlja_1s.png?200|}} | ||
- | ==== Как "дружить" пользователей и 1С ==== | + | Вот как вставить ссылку на файл в блок-схему: |
+ | |||
+ | {{:1s_araptanov:kartinki:ssylka_na_fajl_v_bloke.png|}} | ||
+ | |||
+ | Вот как "перемещать" объекты в схеме: | ||
+ | |||
+ | {{:1s_araptanov:kartinki:dejstvie_s_obektami_v_dsxeme.png|}} | ||
+ | |||
+ | ===== Как "дружить" пользователей и 1С ===== | ||
//"Бизнес? Отделы? Маркетинг? Покажите мне деньги! Покажите мне "мясо"!" Из интервью какого-то олигарха.// | //"Бизнес? Отделы? Маркетинг? Покажите мне деньги! Покажите мне "мясо"!" Из интервью какого-то олигарха.// | ||
Строка 84: | Строка 95: | ||
* "Надо посчитать..." - Программист 1С | * "Надо посчитать..." - Программист 1С | ||
- | Опустим вопрос оценки работы - у каждого она своя. Вот что надо сделать, как я понял: | + | Вопрос оценки работы подробно рассматривать не буду - у каждого она своя. Вот что надо сделать, как я понял. |
Есть уже купленная "конфа". Почему именно она? Кто выбирал? Вопросы без ответов... . Главный вопрос: как ее "дружить" с этой фирмой и сколько это выйдет Заказчику? Отсюда будет ответ на вопрос, сколько я заработаю = сколько я потрачу времени и сколько часов мне оплатят? Надо понимать Заказчик хочет дешево, я хочу сколько нужно. Надо договориться. Договариваться нужно с аргументами в руках, желательно "с цифрами". | Есть уже купленная "конфа". Почему именно она? Кто выбирал? Вопросы без ответов... . Главный вопрос: как ее "дружить" с этой фирмой и сколько это выйдет Заказчику? Отсюда будет ответ на вопрос, сколько я заработаю = сколько я потрачу времени и сколько часов мне оплатят? Надо понимать Заказчик хочет дешево, я хочу сколько нужно. Надо договориться. Договариваться нужно с аргументами в руках, желательно "с цифрами". | ||
Чтобы их получить "+/- километр", надо вникнуть в суть работы компании: описать бизнес-процессы. Поехали. | Чтобы их получить "+/- километр", надо вникнуть в суть работы компании: описать бизнес-процессы. Поехали. | ||
+ | |||
Поговорил - нарисовали такую схему: | Поговорил - нарисовали такую схему: | ||
+ | |||
{{:1s_araptanov:kartinki:sxema_0.png|}} | {{:1s_araptanov:kartinki:sxema_0.png|}} | ||
+ | |||
+ | Да, любой бизнес-аналитик скажет: "Детское творчество!". Но "Яж программист" - мне "фиолетово", главное я могу теперь взять эту схему и начать предметный разговор и меня люди поймут (поймут, поймут - проверено на людях :-)). | ||
+ | |||
+ | Дальше. Надо бы понять, примерно, что за "конфу" купил Заказчик (купил же уже). Берем схему, найдем инструкцию по "конфе" и попытаемся, читая схему и инструкцию понять, насколько "конфа" подходит к схеме работы. Если он бы купил "ЗУП" и пытался бы эту схему в ней реализовать - сам понимаешь, ничего не выйдет. Тогда идем к Заказчику и говорим, что или "конфу" надо другую (вот эту например ...) или поищите другого "тыж программиста". | ||
+ | |||
+ | В нашей истории "конфа" более менее подходит. Пока... . Беремся. Идем к Заказчику - рапортуем, и, главное, что будем делать в первую очередь узнаем. В нашей истории Заказчик попросил реализовать складской учет сначала. | ||
+ | После разговора с кладовщиком наша основная схема принимает вот такой вид: | ||
+ | |||
+ | {{:1s_araptanov:kartinki:sxema_0_1.png|}} | ||
+ | |||
+ | Как видно, элемент №9 теперь стал "Вставкой" - ссылкой на другую схему. Расшифруем схему работы Кладовщика, для модуля-вставка №9 из предыдущей схемы: | ||
+ | |||
+ | {{:1s_araptanov:kartinki:sxema_33.png|}} | ||
+ | |||
+ | Получаем инструкцию по оприходованию товара Кладовщиком: | ||
+ | |||
+ | {{:1s_araptanov:kartinki:sxema_133_0.png|}} | ||
+ | |||
+ | {{:1s_araptanov:kartinki:sxema_195.png|}} | ||
+ | |||
+ | Нарисовали. Теперь садимся рядом с Кладовщиком и пытаемся эту схему реализовать. | ||
+ | И вот, "всплывает". Оказывается, параметры печати нужно каждый раз менять вручную. Непорядок. Сделаем доработку, чтобы параметры печати устанавливались сами. И отразим это в схеме: | ||
+ | |||
+ | {{:1s_araptanov:kartinki:sxema_189_0.png|}} | ||
+ | |||
+ | Внимание на элемент схемы №197. Так я отражаю изменения в конфигурации. Этот элемент входит в "Параллельные действия" с элементом №193. Это значит, что моя доработка "включается" когда пользователь нажимает эту кнопку. Заголовок "Доработка МФК-0002" означает, что эта доработка так называется в моих каталогах (веду маленькую картотеку своих работ, Дракон мне в этом помогает...). Эта доработка: просто пара строк в уже написанном коде. Оформление более серьезных доработок рассмотрим позже. | ||
+ | |||
+ | Имя модуля содержит краткий смысл доработки и адрес внесенных строк в конфигураторе. Текст доработки находиться в 3-ей точке ввода (видно, что она черного цвета). Вот текст, который вы там могли бы увидеть: | ||
+ | |||
+ | ''ТабДок = Элемент.Значение; | ||
+ | //+ААА Задать параметры при печати этикеток | ||
+ | Если Найти(ТабличныеДокументы[0].Представление, "Этикетка") > 0 Тогда | ||
+ | ТабДок.ПолеСверху = 0; | ||
+ | ТабДок.ПолеСнизу = 0; | ||
+ | ТабДок.ПолеСлева = 0; | ||
+ | ТабДок.ПолеСправа = 0; | ||
+ | ТабДок.РазмерКолонтитулаСверху = 0; | ||
+ | ТабДок.РазмерКолонтитулаСнизу = 0; | ||
+ | ТабДок.АвтоМасштаб = Истина; | ||
+ | КонецЕсли; | ||
+ | //-ААА Задать параметры при печати этикеток | ||
+ | ТабДок.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);'' | ||
+ | |||
+ | Ничего сложного, как видите. | ||
+ | |||
+ | Подведем маленький итог на основе вопросов, заданных выше: | ||
+ | |||
+ | 1. Что хочет пользователь? | ||
+ | * Поняли это (примерно ;-)) составив дракон-схему основного алгоритма работы предприятия. | ||
+ | 2. Можно ли реализовать желания пользователя, купив "коробку" 1С? | ||
+ | * Сравнили дракон-схему и инструкцию по "конфе" - нужны будут небольшие доработки. | ||
+ | 3. Если коробочное решение требует доработки, что именно следует дорабатывать? И сколько это будет стоить? | ||
+ | * Не понятно пока, но скорее всего будут "небольшие" доработки. Ничего особо затратного. | ||
+ | 4. Какую "коробку" купить, чтобы дорабатывать меньше? | ||
+ | * Изначально купленная конфигурация подходит. Опять таки исходя из проведенного выше сравнения дракон-схемы и Инструкции по "конфе". | ||
+ | 5. Наши "доработки" полностью устроят заказчика? | ||
+ | * Наша доработка "маленькая" и полностью оправдана. | ||
+ | 6. "Доработка" написана правильно? Может это "плохой" код? | ||
+ | * Думаю да. | ||
+ | 7. Если доработали, сколько будет стоить обновление? | ||
+ | * Есть четко описание, что, зачем и как изменили - обновить будет легко. | ||
+ | 8. Как обучить людей быстро и понятно работать в новой системе? | ||
+ | * Инструкции из дракон-схемы для пользователей получаются подробные и полные. Люди легко учатся. | ||
+ | 9. Если люди увольняются и принимаются, сколько времени новичок будет учиться? | ||
+ | * Инструкции есть - учиться будет быстро. | ||
+ | 10. Новичок будет учиться самостоятельно? Или у него будет инструкция? | ||
+ | * Инструкции есть - учиться будет легко. | ||
+ | 11. Кто поможет новичку научиться работе в системе? | ||
+ | * Инструкция есть - полная и подробная. Она поможет. В крайнем случае - мой приемник или начальник ему поможет. | ||
+ | 12. Уволенный сотрудник может не передать информацию новичку? | ||
+ | * Все инструкции, в виде дракон-схем, в электронном и/или печатном виде храняться у руководства компании. И легко выдаются по мере необходимости. | ||
+ | 13. Программист-разработчик может уволиться. Легко ли новому программисту будет поддерживать систему? | ||
+ | * Сохраняются все дракон-схемы с подробным описание доработок, их логики. Да, легко будет поддерживать. Конечно код специфический, но "кодить" можно прямо из "ИС Дракон". Думается, когда есть описание логики доработок - "специфический" код "малое" зло по сравнению с тем, когда просто ничего нет, кроме "невнятных" комментариев (а бывает, что и их нету). | ||
+ | |||
+ | Не плохо для начала. Двинемся дальше. | ||
+ | |||
+ | |||
+ | * [[:Дракон-схемы на мебельной фабрике :]] | ||
+ | |||
+ | |||
+ | {{:biblioteka_1:01._2012_uchis_chitat_new_end_podlinnik.pdf|Дракон-схемы на мебельной фабрике }} |