Стабильность превыше всего

Публикация № 1149925

Методология - Рефакторинг и качество кода

стабильность разработка проверка гибкость оперативность изменения

Странная заметка о поддержании стабильности в условиях интенсивного изменения конфигурации.

Предисловие

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

Но вернемся с небес на землю! Во многих компаниях разработка / доработка конфигураций ведется в таком ритме, что бумага просто не поспевает за ними (или вместо бумаги Jira, Confluence, Redmine и т.д.). Когда в неделю выполняются десятки доработок и изменений - технические задания отпадают сами собой. Их, конечно, могут писать и в таких ситуациях, но в основном это делают только для фиксации результатов, когда задача уже вышла на рабочее окружение (ну или для "разведения бюрократии"), а также чтобы передать всю старую кипу бумаг новому программисту в будущем. Вникать в курс дела, так сказать. Но сами понимаете, что, если ТЗ писались только потому, что "так надо", никакой практической пользы они не принесут.

Учитывая специфику работы многих российских компаний, в которых изменение информационной системы можно сравнить с гаечным ключом, который "совершенствуется" прямо в руках автомобилиста, напрашивается вывод о невозможности использования технических заданий и четкой проработки требований. Да и сам бизнес не всегда готов сказать, что же он желает получить в результате, чего уж тут говорить об аналитиках, пытающихся весь поток мыслей формализовать.

 
 ВНИМАНИЕ!!! Прочитайте, прежде чем продолжать

Мы не будем рассказывать о специфике работы таких компаний и о причинах происходящего. На эти темы отлично пишет Иван Белокаменцев. Очень интересной была одна из последних публикаций. Рассмотрим другую сторону вопроса. Что нужно сделать программисту / разработчику, чтобы сохранить стабильность работы системы при таком наплыве непротестированных на 100% доработок. Что необходимо сделать нам, разработчикам, чтобы снизить риски при высоких темпах разработки. Вот об этом и пойдет речь далее.

Нет, мы не будем говорить об изменении процессов отдела разработки, внедрения автотестирования и т.д. Это другая история. Мы рассмотрим классические способы решения, известные еще со времен 7.7.

Коллапс

Рассмотрим простой пример, с которым в той или иной степени сталкивался каждый из разработчиков. Торговая организация, все работают в единой базе. Самым используемым по частоте записи / проведения документом является "Чек ККМ". Оно и понятно, в день по всем филиалам происходит много продаж. Кассиры трудятся в поте лица, за что им большое спасибо.

И вот, пришло небольшое задание. По нажатию на кнопке "Пробить" в чеке необходимо выводить итоговую сумму чека в сообщении. Примерно вот таким образом (см. скриншот справа). Да-да, странная задача и она выдумана, просто для примера. Вряд ли Вы столкнетесь с таким в реальности (хотя кто знает...).

Плевое дело! В начале процедуры-обработчика команды "ПробитьЧек", связанной с одноименной кнопкой на форме, нам всего на всего нужно выводить сообщение с привязкой к текущему объекту документа и полю реквизита "СуммаДокумента" на форме. Что может быть проще!

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

// ........

// ++
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Сумма чека к оплате " 
	+ Объект.СумаДокумента // !!! ОПЕЧАТКА !!!
	+ "(руб.)";
Сообщение.УстановитьДанные(Объект);
Сообщение.Поле = "СуммаДокумента";
Сообщение.Сообщить();
// --

ЧекПробит = ПробитьЧекНаКлиенте();

Если ЧекПробит Тогда
	ТолькоПросмотр = Истина;
КонецЕсли;

// ........

И после очередного вечернего обновления информационной базы на следующее утро начался шквал звонков от растерянных кассиров и других пользователей, которые не могу продать товар, так как, цитирую, "У нас чек не работает!".

Всего одна опечатка создала чрезвычайную ситуацию. Конечно, вмешательство программиста позволило решить проблему в считанные минуты. Было проведено динамическое обновление обновление информационной базы с предварительным завершением сеансов. Все пришло в норму.

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

Рассмотрим варианты решения, которые может использовать разработчик, находящийся в подобной ситуации.

Вся ответственность на разработчике

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

Скажи эксепшенам нет!

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

// ........

// ++
Попытка
	Сообщение = Новый СообщениеПользователю;
	Сообщение.Текст = "Сумма чека к оплате " 
		+ Объект.СумаДокумента // !!! ОПЕЧАТКА !!!
		+ "(руб.)";
	Сообщение.УстановитьДанные(Объект);
	Сообщение.Поле = "СуммаДокумента";
	Сообщение.Сообщить();
Исключение
	// Ничего не делаем
КонецПопытки;
// --

ЧекПробит = ПробитьЧекНаКлиенте();

Если ЧекПробит Тогда
	ТолькоПросмотр = Истина;
КонецЕсли;

// ........

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

"Выключатели"

Еще один способ сохранения относительной стабильности - "выключатели". Покажу на примере.

В конфигурации создаем справочник "Разработка" с реквизитом "Флаг" булевого типа. Для всех пользователей добавим право на чтение / изменение этого справочника.

В справочнике будут содержаться предопределенные элементы для каждой доработки / разработки, изменения по которым вносятся в рабочую информационную базу.

Для нашего примера добавим предопределенный элемент с именем "СообщитьОСуммеЧекаПриПробитии".

В соответствии с этим необходимо изменить программный код в обработчике команды "ПробитьЧек" и добавить кэширование значение реквизита "Флаг" для добавленного предопределенного элемента. Первым делом добавим реквизит формы "СообщитьОСуммеЧекаПриПробитии" с типом "булево", а в обработчике формы "ПриСозданииНаСервере" запишем в этот реквизит соответствующее значение.

Примечание: кэширование значения реквизита "Флаг" выполняем для того, чтобы исключить повторные обращения к серверу по команде "ПробитьЧек".

В соответствии с описанными изменениями программный код процедуры-обработчика команды "ПробитьЧек" примет следующий вид:

// ........

// ++
Если СообщитьОСуммеЧекаПриПробитии Тогда
	Сообщение = Новый СообщениеПользователю;
	Сообщение.Текст = "Сумма чека к оплате " 
		+ Объект.СумаДокумента // !!! ОПЕЧАТКА !!!
		+ "(руб.)";
	Сообщение.УстановитьДанные(Объект);
	Сообщение.Поле = "СуммаДокумента";
	Сообщение.Сообщить();
КонецЕсли;
// --

ЧекПробит = ПробитьЧекНаКлиенте();

Если ЧекПробит Тогда
	ТолькоПросмотр = Истина;
КонецЕсли;

// ........

Таким образом, если будет обнаружена ошибка, то разработчик с легкостью уберет флаг в предопределенном элементе "СообщитьОСуммеЧекаПриПробитии" справочника "Разработки" и ветка с программным кодом вообще перестанет выполняться. Никаких экстренных обновлений базы не потребуется, работа нормализуется. Главное форму чека переоткрыть после отключения функционала.

Предложенный вариант позволит отменить использование внесенной доработки без обновления информационной базы, однако ошибка у пользователей все равно единожды появится и потребуется вмешательство специалиста. Может и не программиста, но любого другого сотрудника, способного отключить эту разработку, точно.

Уже не плохо. Для временного исправления ситуации уже не нужно обновлять информационную базу, но вставать в 8 утра все же пришлось бы! Но у нас есть еще интересный вариант в копилке!

Полная автоматизация

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

&НаКлиенте
Процедура ПробитьЧек(Команда)

	// ++
	Если СообщитьОСуммеЧекаПриПробитии Тогда
		
		Попытка
		
			Сообщение = Новый СообщениеПользователю;
			Сообщение.Текст = "Сумма чека к оплате " 
				+ Объект.СумаДокумента // !!! ОПЕЧАТКА !!!
				+ "(руб.)";
			Сообщение.УстановитьДанные(Объект);
			Сообщение.Поле = "СуммаДокумента";
			Сообщение.Сообщить();
		
		Исключение

			ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());

			// Тут сохраняем каким-либо образом информацию об ошибке

			// Отключаем доработку с ошибкой
			ОтключитьФлаг("СообщитьОСуммеЧекаПриПробитии");

		КонецПопытки;
		
	КонецЕсли;
	// --

	ЧекПробит = ПробитьЧекНаКлиенте();

	Если ЧекПробит Тогда
		ТолькоПросмотр = Истина;
	КонецЕсли;

КонецПроцедуры

&НаСервереБезКонтекста
Процедура ОтключитьФлаг(ИмяПредопределенногоЭлемента)

	// Сбрасываем значение в кэше данных формы
	СообщитьОСуммеЧекаПриПробитии = Ложь;

	ОбъектФлаг = Справочники.Разработки[ИмяПредопределенногоЭлемента].ПолучитьОбъект();
	ОбъектФлаг.Флаг = Ложь;

	Попытка
		ОбъектФлаг.Записать();
	Исключение
	КонецПопытки;

КонецПроцедуры

К-к-к-к-к-к-комбо!

Теперь при возникновении ошибки флаг включения нового программного кода будет сброшен в ЛОЖЬ автоматически и при последующих вызовах команды "ПробитьЧек" ошибка вообще не будет воспроизводится.

Как-раз то, чего мы добивались. Ошибки не будут сыпаться бедным пользователям, те будут продолжать как обычно продолжать работать с программой, ничего не подозревая о "пролетевшем мимо метеорите".

А что, если ...

...если программист допустит ошибку в подстраховывающем алгоритме? Все возможно. Чтобы снизить риски лучше всего вынести этот код в общий модуль и после его использовать во всех подобных ситуациях. Тогда постоянно его писать не придется и риск опечаток сведется к минимуму.

Если ЕстьОпечатки Тогда
    Сообщить("Ошибки в коде!");
Иначе
    Сообщить("Ошибок нет!");
КонецЕсли;

А если ошибка будет не синтаксическая, а логическая! Да, тогда автоматически алгоритм не отключится. Нужно будет руками отключить флаг использования разработки. Но никто не обещал создать на платформе 1С:Предприятие искусственный интеллект! Зачем же тогда мы нужны были бы!

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

А каков Ваш идеальных подход в такой ситуации?

 
 Ответы на все вопросы

Другие ссылки

Авторские разработки

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. PerlAmutor 104 07.11.19 19:22 Сейчас в теме
У нас подобный подход встречается для крупных блоков доработок. Например есть приказ, что с 1 ноября все сотрудники работают по такой-то схеме бизнес-процесса. Чтобы эту новую логику заложить на старых метаданных требуется доработка, которая не должна влиять на работу до 1 ноября. Так вот подобный выключатель полезен первые пару дней после перехода. Просто сдвигаем дату с 1 ноября на 2 ноября, люди продолжают работать как и работали, пока разработчики в срочном порядке исправляют критичные баги, которые всплывают только у пользователей с ограниченными правами и только в тонком клиенте и когда созвездие Стрельца находится в Деве.
mrflatcher; Designer1C; Tikoven; CyberCerber; YPermitin; +5 Ответить
13. YPermitin 8568 08.11.19 11:16 Сейчас в теме
(1)
Стрельца находится в Деве


Это частая причина. Возможно надо написать в фирму "1С", чтобы убрали эту связь с багами в конфигурациях.
16. starik-2005 2177 08.11.19 11:43 Сейчас в теме
(13) так созвездие Стрельца в Деве в принципе находиться не может - Солнце, там, Луна, планеты - да, а одно созвездие в другом - нонсенс... В общем надо правильно описывать баг, непротиворечиво.
YPermitin; +1 Ответить
21. PerlAmutor 104 08.11.19 18:33 Сейчас в теме
(16) В Астрономии может даже и быть, но если правильно выбрать точку (не на земле, а во вселенной). А в Астрологии так вообще любые чудеса могут происходить )) А так это скорее ситуация, которая по мнению программиста случиться никогда не должна была бы...
YPermitin; +1 Ответить
22. YPermitin 8568 08.11.19 18:43 Сейчас в теме
(21) Мы похоже какой-то плавающий баг обсуждаем.
24. starik-2005 2177 08.11.19 23:47 Сейчас в теме
(21) если выбрать точку (этак в паре десятков световых лет, полагаю), то предположу, что звездный узор не будет похож уже ни на Деву, на на Стрельца (или кто там был?)

А в астро(логии? Правда?) - вообще любой бред может быть, и пытливый ум всегда найдет, как это притянуть за уши к окружающей действительности. Есть же универсальные рецепты, да?)))
2. acanta 07.11.19 19:45 Сейчас в теме
У нас такой подход использовался при независимой работе нескольких разработчиков без выделенного руководителя проекта. Можно предположить, что код вызова сообщения/комментария об ошибке например содержит информацию о разработчике данной доработки и "шквал звонков" или электронной почты обрушивается на автора доработки.
Когда есть руководитель проекта и у него есть возможность заменить накосячившего исполнителя этот подход теряет смысл.
YPermitin; +1 Ответить
3. Stepa86 1365 07.11.19 19:50 Сейчас в теме
Это теперь все более популярная тема. Гуглить "Feature flags" и "Feature Toggles"
YPermitin; o.nikolaev; +2 Ответить
4. kraynev-navi 461 07.11.19 20:26 Сейчас в теме
(3) надо по-русски гуглить "Функциональные опции"
АлександрВладимирович; kron.isant; YPermitin; +3 Ответить
5. Vladimir Litvinenko 2334 07.11.19 22:10 Сейчас в теме
Проблема понятна, и от опечаток никто не застрахован. Но фича-флаги (импровизированные "функциональные опции") при такой гонке за временем навсегда остаются в конфигурации. И конфигурация обрастает бесконечными вставками вида:

Если ХранилищеНашихНастроек.ПолучитьНастройку("Сообщения о цене при пробитии чека по просьбе бабы Маши включены") Тогда
   // Две строки полезного кода
КонецЕсли

Главная проблема такого кода - он потом месяцами, если не годами, не вычищается из конфигурации. И условия наслаиваются друг на друга. Как-то надо за этим следить, иначе код превращается в лапшу. Но на практике что-то желающих заниматься последующей "уборкой" не находится )) А если и находятся смельчаки вычищать старые условия, то они только повышают риск нарваться на ошибку уже после удаления старых условных операторов и смелость их быстро пропадает )


С другой стороны вот всего за две минуты почти автоматически записал сценарий, который избавит от необходимости обрамлять этот код. И с высокой долей вероятности любой другой код, связанный с пробитием чека. Стабилизация и установка нужной цены для товара заняла бы еще 2 минуты. Сложно придумать аргументы, чтобы сэкономить 4 минуты, если стабильность действительно является ценностью. И никаких бессмысленных условных операторов в коде. Разве что однажды написанные механизмы, позволяющие автоматически запускать тесты. Да и то, сохраняется возможность полениться и не делать автоматический запуск, а запускать сценарии один раз перед релизом вручную )) Хотелось бы чтобы больше в этом направлении коллеги смотрели. 2020 год близится как никак ))

Функционал: Отображение суммы чека после его пробития в панели сообщений пользователю

Как     Продавец розничного магазина
Я хочу  Видеть сумму чека при пробитии в панели сообщений пользователю
Чтобы   Иметь вомзожность быстро сравнить сумму чека на бумажном корешке с суммой чека в 1С

Контекст:
    Дано я подключаю TestClient "Этот клиент" логин "Продавец1" пароль ""

Сценарий: Пробитие чека с сообщением суммы

    Когда Я открываю смену

        Когда В командном интерфейсе я выбираю 'Продажи' 'Чеки ККМ'
        Тогда открылось окно 'Чеки ККМ'
        И из выпадающего списка с именем "КассаККМОтбор" я выбираю точное значение 'Фискальный регистратор (Торговый зал)'
        И я нажимаю на кнопку 'Открыть смену'

    И Выполняю продажу товара по цене двести одинадцать рублей

        Тогда В панели разделов я выбираю 'Продажи'
        И В панели функций я выбираю 'Рабочее место кассира'	
        И я выбираю пункт контекстного меню "Добавить" на элементе формы с именем "Товары"
        И в таблице "Товары" из выпадающего списка "Номенклатура" я выбираю по строке 'Товар по цене 211 рублей'
        И в таблице "Товары" в поле 'Количество' я ввожу текст '1,000'	
        И я нажимаю на кнопку с именем 'ОплатитьНаличнымиДубль'
        Тогда открылось окно 'Оплата наличными'
        И я перехожу к закладке "Группа страница прочее"
        И я нажимаю на кнопку 'Команда2'
        И я нажимаю на кнопку 'Команда1'
        И я нажимаю на кнопку 'Команда1'
        И я нажимаю на кнопку 'Пробить чек (Alt+F2)'

    Тогда в логе сообщений TestClient есть строка "Продан товар за 211 рублей"
Показать

Free1CforAll; PLAstic; CyberCerber; le0nid; YPermitin; litonchik; wowik; ltfriend; stopa85; Артано; Бэнни; +11 Ответить
14. YPermitin 8568 08.11.19 11:19 Сейчас в теме
(5) Полностью согласен со всем написанным.

А выгребать "флаги" из конфигурации, я такого вообще не видел.
20. kwazi 396 08.11.19 17:48 Сейчас в теме
(5) а что за технология? где почитать?
23. Vladimir Litvinenko 2334 08.11.19 23:29 Сейчас в теме
(20) Сейчас уже можно найти очень много полезной информации по этой теме по ключевым словам "Тест менеджер" , "Тест клиент", "Vensssa-Automation" , "Vanessa-ADD". Можно еще в качестве альтернативы посмотреть "Тестер".
31. bulpi 174 11.11.19 13:13 Сейчас в теме
(5)
Что-то я вообще не понял. К чему это сочинение на вольную тему и как оно поможет вывести сообщение ?
32. Terve!R 11.11.19 15:14 Сейчас в теме
(5) ну уж это полнейший абсурд и ложь про две минуты. До этого пришлось сколько недель/месяцев изучать этот функционал тестирования?
Тем более, текст был уже готов, за две минуты разве что пару строк там подправить можно было, но не все с нуля писать.

Что это такое вообще? Для чего скрипт?
33. Vladimir Litvinenko 2334 11.11.19 22:52 Сейчас в теме
(32) Две минуты занимает запись и воспроизведение. Ну еще описать фичу понятными человеку словами и сделать отступы секунд 30-60. Это серьезно то, о чём нужно спорить?

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



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

Уф, хорошо, что в этот раз статья про код в попытках, а не про всякие бесполезные планы запросов )) Чтоб тут началось..... )
mvxyz; PLAstic; _slava_; acanta; YPermitin; +5 Ответить
34. YPermitin 8568 11.11.19 23:48 Сейчас в теме
(33)
Уф, хорошо, что в этот раз статья про код в попытках, а не про всякие бесполезные планы запросов )) Чтоб тут началось..... )


Спасибо за идею для публикации :)))))

Пример отлично описали)
6. o.nikolaev 197 07.11.19 22:54 Сейчас в теме
:) Делал подобное, правда не столь капитальный подход был.
YPermitin; +1 Ответить
7. Rustig 1487 07.11.19 23:10 Сейчас в теме
Золотая середина : использовать выделение идентификаторов желтым цветом и конструкцию попытка исключение, без флагов и дополнительных процедур отключения флагов.
YPermitin; +1 Ответить
8. gorevg 13 07.11.19 23:11 Сейчас в теме
Мы делам доработки через "включатели". Во всех доработанных базах у нас есть справочник Доработки с одним предопределенным элементом, чтобы удобно было обращаться. Туда заносим флаги на доработанные функции, а также любые другие данные, которые нужно хранить для удобства.
YPermitin; wowik; acanta; +3 Ответить
9. tamepjlah 08.11.19 07:30 Сейчас в теме
Метод подходит только если добавляется что-то новое в одном месте. А если вы, например, в запрос добавляете новое условие или запрос в пакет запросов, а после используете это далее по коду? В каждом месте ставить Попытка - Исключение?
Мы во всех базах, где это возможно, используем расширения конфигурации. А где нельзя - тестирование пользователем на копии. А если и это невозможно (подразделения раскиданы территориально и в каждом своя база) - тестирование разработчиком на копии, затем алгоритм для разработчика "накатил на рабочку - протестируй" (и накатываем постепенно, а не на все сразу)
PLAstic; YPermitin; +2 Ответить
10. user1166203 08.11.19 09:29 Сейчас в теме
В - Ванесса. Покрыть критичные участки процессов. А ошибки в некритичных дождутся нашего пробуждения :)
PLAstic; YPermitin; +2 Ответить
11. Shmell 272 08.11.19 09:59 Сейчас в теме
Мы используем некий регистр с произвольными аналитиками (до 6 измерений аналитик), который заменяет нам хранение констант и прочих настроек, в том числе задействуем его в качестве "выключателя"
YPermitin; acanta; +2 Ответить
12. AlexCherdakov 19 08.11.19 11:10 Сейчас в теме
Уже как-то была статья на инфостарте про криворуких программистов в ней упоминалась конструкция попытка/исключение как показатель "криворукости", я тогда не согласился и не соглашусь сейчас. Да кувалда это не очень хороший инструмент но иногда без него никак. Мало того есть даже случаи когда такая конструкция оправдана с точки зрения уменьшения количество правок типовой конфигурации.
PLAstic; bulpi; YPermitin; +3 Ответить
15. YPermitin 8568 08.11.19 11:27 Сейчас в теме
(12) ну тут универсальных ответов нет, просто добавлять попытки везде подряд не разумно.
17. AlexCherdakov 19 08.11.19 11:52 Сейчас в теме
(15)согласен, но и брезгливо поглядывать в сторону этого инструмента только потому что "это не комильфо" и "пацаны не поймут" тоже не стоит
YPermitin; +1 Ответить
18. Fox-trot 114 08.11.19 16:15 Сейчас в теме
по аналогии с паскалем... теперь код рекомендуется начинать с
Попытка
lol
YPermitin; +1 Ответить
19. YPermitin 8568 08.11.19 17:48 Сейчас в теме
25. nocer 09.11.19 01:50 Сейчас в теме
Попытка исключение это зло
Оно только усложняет отладку
При исключении рушится транзакция, вложенных транзакций в 1с нет и если вы уже находитесь в транзакции на момент ошибки то никакой флаг уже не снимете. В данной транзакции уже происходили ошибки - вот сообщение которое вы увидите
А если попытка вложенная в другую попытку то отладка такого решения становится веселой задачей, такое любил рарус в своих конфигурациях альфа авто да будет вечно здоров тот кто там это придумал
В свое время чтобы побороть такие ошибки тот же рарус грозился написать внешнюю компоненту которая возьмёт на себя все сообщения в исключениях, отфильтрует их для пользователей и выведет только те которые являются важными\ключевыми в данный момент
Таким образом они выводили сообщения даже если транзакции уже нет в живых
Terve!R; acanta; YPermitin; +3 Ответить
26. Yashazz 3265 10.11.19 15:30 Сейчас в теме
Тот случай, когда комментарии ценнее публикации. Потому что публикация очевидна, как набор утверждений "2*2=4", банальна и нового ничего не содержит (ну разве только для совсем нубов, но их на боевые важные участки обычно не ставят). А вот комменты имеют шанс раскрыть вопрос по-настоящему.
27. acanta 10.11.19 17:58 Сейчас в теме
Я помню ещё со времён комплексной 7.7 константы, которые отключают бухгалтерский учёт и расчет в конфигурации. В идеале они должны превратить комплексную в однокомпонентную конфигурацию (торговля? бухгалтерия? - и главное зачем?)
В 8 ке от компонент отказались, но константы использовать или нет склады, партнёров, кассы или зарплату остались даже в ерп.
Причем ответственность за их использование возлагается на программиста, поскольку после включения функциональных опций (а если предприятие несколько лет работало с единственным складом а теперь решило добавить такую аналитику?) требуется вмешательство программиста с изменением данных задним числом, что в ерп системах просто недопустимо, или по меньшей мере не по таким банальным причинам.
Сами функциональные опции это очень крутой функционал, но имхо он в качестве таких регуляторов использоваться не должен, а комплексная или ерп вовсе не обязаны повторять болезнь роста торговли.
YPermitin; +1 Ответить
28. acanta 10.11.19 18:47 Сейчас в теме
В 7ке, обсуждая эти возможности с коллегами мы предполагали, что можно предлагать клиентам риб с предприятием и комплексной в центре и той же конфигурацией в периферии, но на одной компоненте. С ЗУП в качестве нагрузки или без него (как настроено в миграции). Так могло работать если размигрировать константы( т.е. отключить все типы учёта в периферии), но я не помню ни одного реального проекта, где бы эти идеи оказались востребованы или могли составить конкуренцию нетленкам.
Авторизацию приходилось делать независимую от платформенной, это удобно. Выбор принтеров и хранение их с привязкой к пользователям вместо оси, поскольку не всегда большая сеть была доменной, а печать по одной кнопке это всем нравилось.
YPermitin; +1 Ответить
29. YPermitin 8568 10.11.19 18:57 Сейчас в теме
30. acanta 11.11.19 10:00 Сейчас в теме
По большому счету в обычных формах только одна проблема - в журналах/списках нет фильтров по проведен/помечен, что именно при риб с их попыткой проведения в центральной базе представляет неудобство. В такси все это есть (если не поубирали).
YPermitin; +1 Ответить
35. Doom2w 5 13.11.19 14:10 Сейчас в теме
18+ Вынос нового функционала в модуль дополнительных обработок..
YPermitin; +1 Ответить
37. YPermitin 8568 15.11.19 08:50 Сейчас в теме
36. PLAstic 253 15.11.19 08:49 Сейчас в теме
Есть такие хорошие понятия как "технический долг" и "TCO".
Подобные методы реализации "подстраховки" растят нам необходимость внесения в дальнейшем изменений по удалению лишних блоков кода и функциональности. Как правильно было сказано выше, такая подстраховка нужна только первые пару дней. Значит, нам предстоит ещё один релиз с новыми изменениями: удаление нашей подстраховки. И как все мы знаем, даже такая простая операция может повлечь за собой ошибки.
Итого получается: более частые подготовка, тестирование и выкатывание релизов и бОльшие риски возникновения ошибок.
Второй приведённый мной термин намекает лично мне, что для собственника дешевле нанять тестера или наложить функцию тестирования на консультантов (что у нас на предприятии успешно работает уже несколько лет), чем подобная реализация.
YPermitin; +1 Ответить
38. YPermitin 8568 15.11.19 08:50 Сейчас в теме
(36) да, но обычно собственнику вообще не до этого :)
39. Cyberhawk 118 18.11.19 09:04 Сейчас в теме
Теперь при возникновении ошибки флаг включения нового программного кода будет сброшен в ЛОЖЬ автоматически
Не будет, ибо &НаСервереБезКонтекста
40. strange2007 143 23.01.20 08:53 Сейчас в теме
Что если, да как быть... Если программист работает в режиме цейтнота, то гоните руководителей по автоматизации в шею мокрыми тряпками. Нашлись, блин, зарабатывальщики денег - сами себе проблемы создаёте, и доблестно же их решаете (это театрально возмущаюсь)

А если серьёзно, то я, например, действую так:
1. Кормёжка заказчика мелкими полезностями
2. Приучение пользователей к тому, что им хочется работать и они обожают свой участок
3. Плавное исключение всех контейнеров самодурства
И только потом всё приводится к стандартным решениям, с небольшими внешними доработками. Т.о. получаю нормальный ритм работы, довольных директоров и много позитива. И да, этот вариант относится к предприятиям, где 24 часа в сутки, 7 дней в неделю, всё кипит-бурлит и меняется.

Как делают гореавтоматизаторы:
Делают суперфичу, с кучей дыр и костылей. Быстро внедряют и потом латают дыры костылями. В итоге один-два прога постоянно что-то подделывают по этой задаче. На следующем блоке ещё один прог постоянно подделывает что-то и так до бесконечности. Помню более 40 айтишников сопровождали УПП (переписанную) и не успевали, поэтому несколько франей постоянно там работало. После применения рекомендуемых методов, через год не осталось никого, кроме одного малоопытного одинэсника, без потери функционала
Оставьте свое сообщение

См. также

[Простые маршруты]. Работа с картой. Геозоны. Расчет оптимальных вариантов доставки Промо

Рабочее место Универсальные обработки Оптовая торговля Оптовая торговля v8 1cv8.cf Оптовая торговля, дистрибуция, логистика УУ Платные (руб)

Универсальное решение для любых конфигураций по отображению на карте адреса доставки из любых документов базы данных. Интерактивная работа с картой из 1С и обратно. Широкий набор средств для формирования маршрутов на карте вручную. Ключевая особенность программы – умение математически точными методами автоматически рассчитать и представить на карте разные варианты оптимальных маршрутов: - исходя из заданного количества единиц автотранспорта; - исходя из заданной величины максимальной грузоподъемности автотранспорта.

10000 руб.

08.02.2016    52080    29    1    

Не спеша, эффективно и правильно – путь разработки. Часть 2. Теория

Практика программирования Бесплатно (free)

Черновой вариант книги Никиты Зайцева, a.k.a.WildHare. Разработкой на платформе 1С автор занимается с 1996-го года, специализация — большие и по-хорошему страшные системы. Квалификация “Эксперт”, несколько успешных проектов класса “сверхтяжелая”. Успешные проекты ЦКТП. Четыре года работал в самой “1С”, из них два с половиной архитектором и ведущим разработчиком облачной Технологии 1cFresh. Ну — и так далее. Не хвастовства ради, а понимания для. Текст написан не фантазером-теоретиком, а экспертом, у которого за плечами почти двадцать три года инженерной практики на больших проектах.

22.06.2020    6455    0    WildHare    23    

Не спеша, эффективно и правильно – путь разработки. Часть 1. Парадигма

Практика программирования Бесплатно (free)

Черновой вариант книги Никиты Зайцева, a.k.a.WildHare. Разработкой на платформе 1С автор занимается с 1996-го года, специализация — большие и по-хорошему страшные системы. Квалификация “Эксперт”, несколько успешных проектов класса “сверхтяжелая”. Успешные проекты ЦКТП. Четыре года работал в самой “1С”, из них два с половиной архитектором и ведущим разработчиком облачной Технологии 1cFresh. Ну — и так далее. Не хвастовства ради, а понимания для. Текст написан не фантазером-теоретиком, а экспертом, у которого за плечами почти двадцать три года инженерной практики на больших проектах.

15.06.2020    9967    0    WildHare    34    

Перенос данных из 1С:Бухгалтерии 7.7 в БП 3.0

Перенос данных из 1С7.7 в 1C8.X Обмен через XML v7.7 v8 1С7:Бух БП3.0 Россия БУ Платные (руб)

Стандартная обработка перехода с 1С:Бухгалтерии 7.7 на 1С:Бухгалтерия предприятия 8, ред.3.0 достаточно сложна в использовании. При ее запуске и попытке выполнения перехода можно встретить большое количество ошибок (примеры ниже). Наша разработка содержит исправление этих ошибок. Также при приобретении нашего переноса данных из 1С:Бухгалтерии 7.7 в БП 3.0 вы получите техническую поддержку наших специалистов по любым вопросам, связанным с этой задачей.

15000 руб.

26.05.2020    1239    0    2    

Перенос данных из КА 1.1 в КА 2 / УТ 11 Промо

Обмен через XML Перенос данных из 1C8 в 1C8 v8 КА1 УТ11 КА2 Платные (руб)

Комплексную автоматизацию для ведения учета обычно выбирают компании среднего и крупного размера, которые не хотят связываться с обменами. При этом в одной программе необходим функционал бухгалтерии, зарплаты и торговли. Комплексная автоматизация 2 решает эту задачу и содержит самые современные разработки фирмы 1С. Программа хорошо отлажена и проверена на учете реальных организаций, потому что разработана на основе проверенных временем УТ 11 и ERP 2. Типовая обработка перехода с Комплексной автоматизации редакции 1.1 на Комплексную автоматизацию редакции 2 не переносит документы. Для переноса документов, начальных остатков и справочной информации можете воспользоваться предлагаемой разработкой (правила конвертации данных из КА 1.1 в КА 2 / УТ 11). При покупке предоставляю поддержку, оперативно исправляю ошибки, рассылаю обновления при выходе новых релизов.

37125 руб.

04.12.2015    134617    356    287    

5 причин 1С-нику участвовать в хакатонах

Личная эффективность Бесплатно (free)

5 причин, зачем вам ходить на хакатоны, почему на это стоит выделять время.

24.05.2020    4610    0    comol    19    

Перенос данных из УНФ 1.6 в БП 3.0

Обмен через XML Перенос данных из 1C8 в 1C8 v8 УНФ БП3.0 Россия БУ УУ Платные (руб)

Обработка для переноса документов, начальных остатков и справочной информации. Можно использовать как для разового начального переноса данных, так и для организации регулярного обмена данными. Есть возможность указать период отбора данных и установить фильтр по организациям. Перенос оперативно обновляем при выходе новых релизов программ 1С. По возникающим вопросам оказываем техническую поддержку (через тикеты на Инфостарте).

15000 руб.

18.05.2020    1400    0    3    

Перенос данных из БП 3.0 в УПП 1.3

Обмен данными 1С Обмен через XML Перенос данных из 1C8 в 1C8 v8 УПП1 БП3.0 Россия Платные (руб)

Поддерживается перенос документов и справочной информации. Есть возможность указать период отбора данных и установить фильтр по организациям. Перенос оперативно обновляем при выходе новых релизов программ 1С. По возникающим вопросам оказываем техническую поддержку (через тикеты на Инфостарте).

15000 руб.

06.05.2020    2126    3    3    

DT:Менеджер 8.2 (8.3) (Распаковка/упаковка *.DT файлов. Быстрый экспорт CF. Сброс пользователей. Работа с "битыми" DT) Промо

Сервисные утилиты Инструментарий разработчика Администрирование данных 1С v8 1cv8.cf Платные (руб)

Внешнее приложение для работы с форматом *.DT. Осуществляет быстрый экспорт конфигурации, очистку сведений о пользователях и может работать с аварийными DT файлами.

6000 руб.

19.04.2013    123874    201    215    

Перенос данных из ERP 2 / КА 2 / УТ 11 в УНФ 1.6

Обмен данными 1С Перенос данных из 1C8 в 1C8 v8 УНФ ERP2 УТ11 КА2 Россия Платные (руб)

Обработка позволяет выполнить полный перенос данных из программ 1С:ERP / КА 2 / УТ 11 в программу 1С:УНФ. Переносятся начальные остатки на выбранную дату, документы за период, а также справочная информация. Переносятся все возможные виды документов. Оказываем техническую поддержку. Оперативно обновляем правила конвертации данных при выходе новых релизов программ 1С.

15000 руб.

28.04.2020    1936    0    6    

Автозагрузка банковских выписок (БП 3.0)

Банковские операции Обмен с банком v8 v8::БУ БП3.0 БУ Абонемент ($m)

Расширение позволяет автоматизировать загрузку банковских выписок в программу 1С:Бухгалтерия предприятия, ред. 3.0. При начальной настройке создается регламентное задание. Период срабатывания регламентного задания в дальнейшем можно поменять в консоли заданий. Требуется указать каталог, из которого нужно загружать банковские выписки.

1 стартмани

06.04.2020    3001    3    primat    5    

Как я собрал для себя высокопроизводительный и бесплатный облачный бекенд для 1С на PosgreSQL + PostgREST

Производительность и оптимизация (HighLoad) WEB Интеграция Мобильная разработка Администрирование веб-серверов v8 Бесплатно (free)

В этой статье я расскажу о проблемах бека для мобильных приложений или другого фронта, который требует производительности, быстрой реакции и отказоустойчивости, и как я решил это благодаря opensource проекту PostgREST и СУБД Postgre SQL 12. Проведу простой тест производительности для сравнения 1С с данным решением. Это может быть полезно всем, кто разрабатывает мобильные приложения либо фронтсайд-приложения для 1С на чем угодно - на мобильной платформе или на нативном языке или на Simple UI. И также обзор новых функций SimpleUI для связи с этим бекендом.

31.03.2020    11156    0    informa1555    21    

"Учет и печать ТТН по форме 1-Т и Транспортных накладных" - внешняя печатная форма к документу "Реализация товаров и услуг" для конфигурации "Бухгалтерия предприятия, редакция 3.0" 1С 8.2. Промо

Печатные формы документов Оптовая торговля Производство готовой продукции (работ, услуг) Оптовая торговля Производство готовой продукции (работ, услуг) v8 v8::БУ БП3.0 Россия БУ Платные (руб)

В одной форме вводятся реквизиты для печати двух форм транспортных накладных и сохраняются введенные данные. Обработка подключается к документу "Реализации товаров и услуг", создаются и ведутся дополнительные справочники (транспорт, сведения о грузе, адреса пунктов погрузки). Формируется реестр накладных с необходимым пользователю составом колонок.

1900 руб.

21.10.2013    39828    48    22    

Печать текстовых водяных знаков в файлы PDF из 1С

Универсальные обработки v8 1cv8.cf Абонемент ($m)

Обработка для группового наложения текстовых водяных знаков в документах PDF с помощью бесплатной программы AVS Document Converter. Тестировалась в ОС Windows 7 64 bit на платформе 8.3.15.1830 с AVS Document Converter 4.2.3.268.

2 стартмани

13.03.2020    1060    3    Spartan    8    

Полиграфистки сходят с ума по одной

О жизни Бесплатно (free)

Мой опыт прохождения полиграфа.

06.03.2020    4922    0    1c-intelligence    78    

Перенос документов, остатков и справочников из УНФ 1.6 в УТ 11 / КА 2 / ERP 2 (ЕРП 2)

Обмен данными 1С Обмен через XML Перенос данных из 1C8 в 1C8 v8 УНФ ERP2 УТ11 КА2 Россия Платные (руб)

Правила переноса данных из УНФ в УТ 11 / КА 2 / ERP 2 (ЕРП 2) позволяют перенести начальные остатки на выбранную дату, а также документы за период, начиная с этой даты. Это позволит комфортно начать ведение учета в новой программе 1С. Предоставляем техническую поддержку, оперативно обновляем перенос при выходе новых релизов программ 1С. Добавляем новые виды объектов в переноса по просьбам наших клиентов.

15000 руб.

05.12.2019    5454    5    10    

Заполнение книги учета доходов и расходов (КУДиР) 1С Промо

Обработка документов Налоговые Закрытие периода Закрытие периода Закрытие периода v8 v8::УФ КА1 БП2.0 УПП1 ERP2 БП3.0 КА2 БУ НУ УСН Платные (руб)

При формировании КУДиР при УСН часто возникает множество вопросов и проблем, к.т.: 1. Как выполняется заполнение книги учета доходов и расходов 2. Неправильно формируется книга учета доходов и расходов в 1С а). Доходы / расходы не попадают в КУДиР; б). Доходы / расходы попадают, но не принимаются к учету и многие другие ошибки. При правильном учёте, книга формируется корректно, но идеальный учет это скорее фантастика, для реальных случаев можно использовать специальный инструмент. Обработка предназначена для просмотра и заполнения КУДиР. Заполнение может производиться как штатным, так и альтернативным способом (от бухгалтерской проводки).

4900 руб.

12.03.2014    105533    58    81    

Универсальное выборочное удаление данных из базы 1С (любые конфигурации на упр.формах: БП 3.0, УТ 11, КА 2, ERP, УНФ, ЗУП 3, Розница и т.д.)

Чистка базы Универсальные обработки v8 v8::УФ Розница УНФ ERP2 ЗКГУ3.0 БП3.0 УТ11 КА2 ЗУП3.x Платные (руб)

Обработка позволяет удобно выборочно удалить данные из базы 1С. Это могут быть как неиспользуемые элементы справочников, так и неактуальные организации. При этом есть возможность провести анализ пересечений документов с другими организациями и таким образом уберечься от того, что при удалении обороты по другой организации изменятся.

3000 руб.

28.11.2019    4189    10    7    

Стабильность превыше всего

Рефакторинг и качество кода v8 Бесплатно (free)

Странная заметка о поддержании стабильности в условиях интенсивного изменения конфигурации.

07.11.2019    9034    0    YPermitin    40    

6 шотов

О жизни Бесплатно (free)

Небольшие пятничные истории о взаимоотношениях в коллективе

01.11.2019    9678    0    sapervodichka    28    

Загрузка документов в 1С (7.7) из табличных файлов Excel,OpenOffice,1C,DBF,TXT (обработка) Промо

Файловые протоколы обмена, FTP Загрузка и выгрузка в Excel 1С7.7<->1C7.7 v7.7 1cv7.md Платные (руб)

Обработка решает поставленную задачу по вводу документов, а кроме того обладает важной функцией: настраивается на ассортимент конкретного поставщика, запоминая соответствие между его номенклатурой и «нашей». Т.е. фактически – является самообучающейся системой ввода накладных. У разных поставщиков могут быть накладные различного типа, с разным количеством полей, поэтому для каждого из них может быть сохранена своя собственная настройка диалоговой формы так, что любая поступающая накладная может быть обработана. По отношению к программе "1С:Предприятие 7.7" данное решение является внешними файлами. Для использования данного продукта не требуется вносить изменения в алгоритм существующих программ или используемых конфигураций.

1500 руб.

10.12.2009    63066    50    93    

Шорты Белокаменцева

О жизни Бесплатно (free)

Короткие версии старых статей

28.10.2019    7718    0    1c-intelligence    18    

Перенос данных из КА 1.1 / УПП 1.3 / УТ 10.3 в УНФ 1.6

Обмен данными 1С Перенос данных из 1C8 в 1C8 v8 КА1 УПП1 УНФ Россия Платные (руб)

Перенос остатков, документов и справочников из КА 1.1 / УПП 1.3 / УТ 10.3 в УНФ 1.6. Обработка позволяет начать учет в программе "1С:Управление нашей фирмой" - перенести в нее из существующей базы "1С:Управление производственным предприятием 1.3" / "1С:Комплексная автоматизация 1.1" начальные остатки на выбранную дату, документы за период времени и также всю необходимую справочную информацию. По вашему запросу бесплатно добавляю в перенос дополнительные виды объектов (например, новые виды документов). Перенос включает в себя правила конвертации в формате XML, обработку для выгрузки и загрузки данных, а также инструкцию по работе. В стоимость переноса включена техподдержка в течение месяца с момента покупки, а также получение обновлений переноса в течение полугода.

15000 руб.

17.10.2019    6765    6    12    

Перенос данных из Управление торговлей 10.3 в Бухгалтерию предприятия 3.0 (правила переноса остатков, документов и справочников из УТ 10.3 в БП 3.0)

Обмен через XML Перенос данных из 1C8 в 1C8 v8 УТ10 БП3.0 Россия БУ УУ Платные (руб)

Правила переноса остатков, документов и справочников из УТ 10.в БП 3.0 позволяют как начать вести учет в новой базе БП 3.0, так и организовать регулярный обмен данными, вводимыми на стороне УТ 10.3. Перенос оперативно обновляем на новый релизы, предоставляем техническую поддержку. Возможно бесплатное выполнение тестового переноса данных перед приобретением нашей разработки.

10000 руб.

02.10.2019    5429    2    9    

Алкогольная декларация для 1С 8.1, 8.2, 8.3 (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 формы) УТ10.2/10.3, УТ11, УПП, КА, БП2.0/3.0, БП КОРП, Розница 1.0/2.1, Далион, Астор, УТАП и др. с подписью и шифрованием, редакция 2.3 Промо

Регламентированная отчетность Бухгалтерские Налоговые Розничная торговля Розничная торговля v8 КА1 БП2.0 Розница УПП1 БП3.0 УТ11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия БУ НУ Акцизы Платные (руб)

Сложности с подготовкой алкогольной декларации? Срок сдачи все ближе, а Вы не успеваете? Устали заносить/править данные вручную? Давит угроза штрафа в десятки тысяч или лишение лицензии? Бессонные ночи и потраченные на работе вечера в пик сдачи отчетности? Надоело формировать отчет для каждого клиента и отсылать вручную? Вам знакомы эти проблемы? Если да, то у нас есть РЕШЕНИЕ, которое Вам поможет! Автоматическое и ручное заполнение алкогольных деклараций по формам 1, 3 (производство), 2, 4 (использование), 5, 6, 7 (опт), 8, 9 (перевозка), 10 (использование мощностей), 11, 12 (розница, разделы I и II) по данным учета, проверка и шифрование, а также загрузка из внешних файлов и выгрузка в последнем актуальном формате 4.31.

20000 руб.

23.10.2012    209968    285    414    

Видя деньги

О жизни Бесплатно (free)

Немножко бизнес-программирования.

09.09.2019    8195    0    1c-intelligence    94    

Куда и как расти

Личная эффективность Бесплатно (free)

Даже если сейчас у вас стабильная работа, это не означает, что завтра ситуация не изменится, вы не окажетесь на рынке труда в поисках новой должности. Какие специалисты сейчас требуются, и какие тренды превалируют на рынке IT и в сфере 1С, на конференции рассказал директор по развитию внедренческого центра «Раздолье» Андрей Мироненко. Он работает в качестве руководителя IT-направления свыше 15 лет, а в должности директора IT – 10 лет. Является автором различных обзоров, курсов и иных полезных материалов. Занимался подбором и мотивацией персонала, разработкой стандартов качества IT-сервисов, руководством проектами автоматизации (ERP, WMS и пр), имеет опыт организации розничных сетей, call-центров, запуска и сопровождения интернет-магазинов.

16.05.2019    11608    0    andironenko    26    

Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером

Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Практический кейс построения HTTP-сервиса, который работает по принципу HTTP-сервера, с разбором всех методов построения и разработки класса задач построения личных кабинетов и сопряжения их с центральной базой.

1 стартмани

13.05.2019    26719    119    Diversus    42    

Удаленная работа. Как выбрать работодателя

Личная эффективность Бесплатно (free)

На что обратить внимание при выборе удаленного работодателя

15.11.2018    11649    0    sergey_garin    24    

В гости к отцу

О жизни Бесплатно (free)

Про старых и новых инженеров.

14.11.2018    7380    0    1c-intelligence    34    

Контроль отрицательных остатков в конфигурациях: УТ 11.4, КА 2.4, ЕРП 2.4

Бухгалтерский учет Учет ТМЦ Управленческий учет (прочее) Учет ТМЦ v8 v8::УФ ERP2 УТ11 КА2 Россия УУ Бесплатно (free)

Подробный разбор всех присутствующих в конфигурациях УТ 11, КА 2, ЕРП 2 вариантов контроля отрицательных остатков: по организациям, складам, оперативный контроль

08.11.2018    50212    0    ids79    73    

Обмен каталогом товаров между 1С и другими системами в формате YML (Yandex Market Language) Промо

Обмен через XML WEB Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 УТ10 УНФ УТ11 Платные (руб)

Обработка для выгрузки/загрузки каталога номенклатуры в 1С из формата YML (Yandex Market Format). В настоящий момент поддерживается выгрузка в YML из УТ11 и УТ10. Загрузки из YML в УТ11, УТ10 и УНФ 1.6. Обработки тестировалась на конфигурациях УТ 11.3.1.115 (управляемые формы), УНФ 1.6.9.36 (управляемые формы) и УТ 10.3.32.2 (обычные формы). Обращайтесь по вопросом адаптации обработки под другие конфигурации. Обработка предоставляется с открытым кодом. Кроме того, будет осуществляться развитие проекта. Выпускаемые обновления будут распространяться среди покупателей БЕСПЛАТНО в течение 1 года с момента покупки. Обратите внимание, что при чтении YML-файлов большого размера может происходить увеличение размера временных файлов 1С. Поэтому для быстрого чтения объемных файлов необходимо иметь соответствующей мощности ПК. Если есть потребность быстро загружать объемные файл рекомендуется использовать сервера, а не обычные ПК.

4900 руб.

18.05.2015    64060    110    48    

О главном инструменте разработчика, аналитика и руководителя

Личная эффективность Бесплатно (free)

Думаю, все были на собеседованиях и на вопрос «какие инструменты вы используете в работе», у всех заготовлен ответ про языки, библиотеки, среды разработки, базы данных и т.д. и т.п. В крайнем случае, у кого-то может быть припасена шутка про грабли и напильник. Ну и все доблестно перечисляют всякие XDTO и СКД, думая, что перечисляют невероятно важные средства разработки, в которых хорошо разбираются. Но правда заключается в том, что единственно важным средством разработки является ваш мозг. И вы абсолютно ничего не знаете о том, как он устроен.

10.08.2018    10772    0    m-rv    40    

Способы оптимизации переносов данных

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

Хочу рассказать вам про способы оптимизации разработки правил обмена в программе «Конвертация данных» второй редакции. Казалось бы, про эту программу и разработку в ней правил конвертации уже сказано все, что можно. Появились уже более современные и быстрые технологии. Почему же все еще она? Дело в том, что «Конвертация данных» второй редакции все еще актуальна для огромного круга задач. Она имеет очень широкую функциональность и позволяет реализовывать сложные алгоритмы. Годы идут, а люди продолжают ей пользоваться и у них возникает много вопросов по этой программе. Возможно, в будущем вы тоже будете заниматься такими проектами и столкнетесь с задачами, похожими на те, про которые я собираюсь рассказать. Мне хочется вам в этом помочь.

1 стартмани

02.08.2018    16510    11    primat    7    

Минимализмы 3

Практика программирования Универсальные функции v8 Бесплатно (free)

Очередная серия "минимализмов" [http://infostart.ru/public/306536/, https://infostart.ru/public/460935/]. Также, как и в предыдущих статьях, здесь приведена подборка коротких оригинальных авторских решений некоторых задач. Ранее эти решения были разбросаны по моим комментариям к чужим публикациям.

19.02.2018    44930    0    ildarovich    45    

Распознавание документов в "1С:Предприятие 8.3": расширение для типовых конфигураций. Промо

Обработка справочников Внешние источники данных Управление персоналом (HRM) Управление персоналом (HRM) v8 1cv8.cf Платные (руб)

Расширение для типовых конфигурация и для самостоятельной интеграции системы распознавания документо удостоверяющих личность и прочих документов непосредственно из информационных баз "1С:Предприятия 8.3". Расширение позволит не изменять типовой код конфигурации, расширить текущий функционал несколькими кликами мыши.

5000 руб.

26.01.2016    47952    62    0    

А чё это вы здесь делаете, а?

WEB v8 1cv8.cf Абонемент ($m)

Разработчикам тиражных обработок близка и понятна проблема обратной связи с пользователем. Много важного и полезного можно почерпнуть, зная, что делает бухгалтер, который запустил обработку. В большом мире вэба сбор статистики на сайте дело привычное и даже обязательное. Эта статья покажет практику применения инструментов сбора статистики из мира веба для обработок на платформе 1С:Предприятие.

1 стартмани

21.01.2018    22986    31    infosoft-v    42    

Одно Кольцо, Чтобы Править Всеми

Личная эффективность Бесплатно (free)

Рассказ о внедрении 1С. Необычный.

25.12.2017    15036    0    1c-intelligence    62    

Джеб Кличко

Личная эффективность Бесплатно (free)

Бывает же такое: 1Сник может учиться у Кличко

18.12.2017    16313    0    1c-intelligence    63    

Латентные паразиты

Управление бизнес-процессами (BPM) Бесплатно (free)

Вот вы сидите, и не думаете о паразитах. А они рядом.

04.12.2017    25850    0    1c-intelligence    144    

Комплект увольнения

О жизни Бесплатно (free)

Это все, что останется после меня. Это все, что возьму я с собой.

28.11.2017    26861    0    1c-intelligence    87    

Суррогаты

О жизни Бесплатно (free)

Статья о том, что вы и без меня прекрасно знаете. Но я напомню.

21.11.2017    28785    0    1c-intelligence    197    

Простой способ повысить шансы на победу, переговоры без поражения. Тонкое искусство переговоров для специалистов по 1С и не только. Часть 2

Личная эффективность Бесплатно (free)

После своей предыдущей публикации https://infostart.ru/public/690718/ получил много сообщений с вопросами. Один из наиболее часто повторяющихся – о том, как повысить шансы на победу в сложных переговорах, если этому никогда не учился? Конечно, от это вопроса веет верой в Гарри Поттера и его волшебную палочку, но мы точно знаем, что правильный ответ есть. Используйте принцип «всегда вдвоем». Это одна из самых простых и самых сильных манипуляций в переговорах.

07.11.2017    10297    0    user809424    17    

Кошка сдохла, хвост облез

Личная эффективность Бесплатно (free)

Практический прием для руководителя из арсенала системного мышления.

04.11.2017    17613    0    1c-intelligence    44    

Экзорцизм программистскими методами

О жизни Бесплатно (free)

Примеры из жизни о том, как инструменты на платформе 1С помогают компании изгонять зло.

24.08.2017    33675    0    1c-intelligence    59    

Рассылка СМС-сообщений через сервис SMS.ru

SMS рассылки v8 1cv8.cf Россия Абонемент ($m)

Простая конфигурация, позволяющая быстро организовать смс-рассылку через интернет-сервис SMS.ru. Конфигурация собрана на платформе 1С:Предприятие 8.3 (8.3.8.2088), механизм взаимодействия с внешним сервисом - http запросы.

1 стартмани

20.08.2017    11493    43    sdn-1    0    

Агрессия в переговорах

Личная эффективность Бесплатно (free)

Многие люди сравнивают агрессию с отсутствием такта и невоспитанностью либо с плохим настроением. И мало кто задумывается, что она может стать помощником, особенно когда идет речь о сотрудничестве или переговорах с партнерами. Чем может быть полезна агрессия и как правильно ею пользоваться, рассказывает бизнес-тренер, руководитель Петербургской школы переговорщиков «ШИП» Дмитрий Коткин.

08.08.2017    12321    0    user809424    45    

Умный дом на 1С + ардуино

Практика программирования v8 Абонемент ($m)

Конфигурация для автоматизации быта программиста 1C и не только. В данной статье будет рассказано, как можно использовать 1С для задач, не входящих в стандартные рамки этой платформы. Например, управление домом. В качестве периферии для подключения будет использован микроконтроллер (МК) Ардуино, но на нём не будет никакой логической нагрузки, весь процесс будет проходить на сервере 1С. Работа с пинами ввода/вывода происходит напрямую из 1С.

1 стартмани

07.08.2017    20958    20    sasha777666    63    

Как я стал одинэсником и переехал из провинции в Москву

О жизни Россия Бесплатно (free)

История покорения Москвы.

29.07.2017    16840    0    DmitryKSL    132