Блокировка работы пользователей во время загрузки данных при синхронизации. РИБ

Блокировка работы пользователей во время загрузки данных при синхронизации. РИБ

Роман Осадченко No Comments

У каждого, кто занимается организацией обмена на 1С, рано или поздно возникает необходимость загрузить из одного узла в другой значительный объем данных. Длительные блокировки в этом случае — дело обычное и нежелательное, время загрузки может исчисляться сутками.

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

К этой ситуации может привести две причины (обычно в типовых конфигурациях):

  1. Обмен между узлами не проводился долгое время (ftp пропал, обновление конфигурации одного из узлов вовремя не провели, и т.п.)
  2. В одном из узлов обмена проводится значительный объем документов за большой период времени при выключенном или медленном обмене.

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

  1. Ручной
    1. Очистка таблицы регистрации в узле-отправителе
    2. Регистрация в таблицах регистрации узла обмену всех справочников
    3. Проведение обмена с другими узлами
    4. Помесячная регистрация всех документов в таблицах узла-отправителя с обменом
  2. Автоматический (предложение и исполнение компанией «Рарус»)
    1. Создание копии плана обмена
    2. Регистрация в копии плана обмена изменений из основного плана обмена «порциями»
    3. Проведение обмена через копию плана обмена
    4. Удаление копии плана обмена

Как видим, эти решения сводятся к тому, чтобы передавать данные порциями.

 

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

Отбросив предложения разбить файл на части (у меня его объем составлял больше 3 Гб, кто работает с XML — меня поймёт), мы посмотрим на возможности платформы.

У метода ПрочитатьИзменения() мы увидим два параметра:

  1. ЧтениеXML
  2. Количество элементов в транзакции

Вот второй параметр нам как раз и нужен! В типовых конфигурациях вторым параметром передаётся 0 (нуль), что означает: «Загрузка данных производится в рамках одной транзакции».

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

В моём примере оказалось достаточно поставить 5000 элементов — достаточно разумный компромисс между скоростью загрузки и длительностью блокировок.

Время загрузки каждой порции составило около 300 секунд.

Ниже решение на скриншотах:

.

Попытка подключения к контексту сервера с неподходящей версией метаданных

Роман Осадченко No Comments

В технологическом журнале могут встречаться сообщения типа: Попытка подключения к контексту сервера с неподходящей версией метаданных. Правильный контекст сервера…

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

Источник: http://www.gilev.ru/improper_metadata/

Установка Kerio Control VPN Client 9 для 32-разрядной Ubuntu 15.10

Роман Осадченко No Comments

Установка
===================

Перед началом дальнейшей работы нужно установить пакет openssl и debconf.

У меня debconf уже был установлен.

# sudo apt-get install debconf openssl

Скачиваем пакет клиента vpn здесь: http://www.kerio.ru/support/kerio-control

Печать штрих-кодов на этикетках через RDP, Windows 2008 R2

Роман Осадченко No Comments

В минувшие выходные столкнулись с проблемой: сканер штрих-кодов не считывает штрих-код с этикетки при печати из УТ 10.3 на принтер этикеток Zebra LP2824 через RDP из Win 2008 R2.

С аналогичной проблемой столкнулись здесь: http://www.forum.mista.ru/topic.php?id=722729

Работа USB сканера Honeywell (Metrologic) RS 5145 в режиме эмуляции COM-порта

Роман Осадченко No Comments

MS5145_P

Предыстория

После вынужденной переустановки операционной системы и повторной настройки торгового оборудования в 1С: Управление торговлей 10.3 сканер перестал подбирать товары в документе «Чек ККМ».

Собственно, все тесты сканера проходили на ура — сканер однозначно рабочий. Даже блокнот можно открыть, сканировать штрих-код — и будет выведены цифры штрих-кода. А в документе «Чек ККМ» сканер работал… как-то странно — просто переходил в другое поле по порядку (как при нажатии клавиши «Enter»). Если поле было текстовое — то выводил штрих-код. Но номенклатуру не подбирал.

Программа не выходит в Интернет на платформе Android

Роман Осадченко No Comments

Столкнулся с проблемой — МТ 3.0 не получает данные из учетной системы 1С. Беглый анализ показал, что приложение вообще в интернет не имеет доступа.

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

Решение оказалось простым — использовалась неправильная точка доступа APN, вместо internet.mts.ru в настройках была установлена wap.mts.ru.

PS: на решение натолкнуло обсуждение похожей проблемы на http://www.androidpit.ru/forum/553014/samsung-galaxy-s3-ne-rabotaet-mobilnyj-internet-v-nekotoryh-prilozheniyah

1Сv8: Изменение цвета линий по-умолчанию у поля графической схемы

Роман Осадченко No Comments

Графическая схема — инструмент для рисования в 1С 8 маршрутных карт спецификаций и бизнес-процессов (в основном). По-умолчанию цвет линий графической схемы — светло-коричневый, и на черно-белой печати выглядит достаточно бледно.

2013-02-12_171921

Изменять цвет линии для каждого элемента вручную — не хотим:)

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

2013-02-12_171211

2013-02-12_171941

Риски управления проектами

Роман Осадченко No Comments

В управлении проектами существует дисциплина — «Управление рисками». Риски в проектах бывают как с отрицательными последствиями, так и с положительными.

Ответ на вопрос: как относиться к рискам?
Задача менеджера проекта — минимизировать появление рисков с отрицательными последствиями (или свести последствия к минимуму), и увеличить вероятность появления рисков с положительными последствиями.

Мнение: даешь риски!
«Избегать рисков – дело проигрышное. Раньше вы могли бы отнестись к проекту, свободному от рисков, как к неожиданному подарку судьбы и благодарили бы звезды за эту редкую удачу – легкий проект. Мы реагировали так же. Какими глупцами мы были! Проекты без риска – удел неудачников. Риски и выгоды всегда ходят рука об руку. Компании, избегающие рисков и концентрирующие усилия только на том, что наверняка умеют делать хорошо, засевают поле для своих соперников. Проект полон рисков потому, что ведет вас нехожеными тропами. Он может расширить ваши возможности так, что это сведет с ума ваших конкурентов. В идеале – до такой степени, что конкурентам будет уже нечем ответить. (Том ДеМарко и др. – Вальсируя с медведями)»

Даже нечего добавить:) Рискуйте — но знайте свою меру:)

Босс: бесподобный или бесполезный

Роман Осадченко No Comments

Рекомендую прочитать книгу Иммельмана Рэймонда «Босс: бесподобный или бесполезный». История про менеджера, которого поставили выполнить безнадежный проект. Кажется, что всё против него — однако он с честью выходит из положения. Он не только выполнил проект, но и добился получения стабильных результатов в будущем.

Секрет — в людях. А также в правильном управлении кадрами (или вернее сказать — отношении к людям и к работе?). За основу взята достаточно интересная теория; компании (и вообще любые группы) рассматриваются как древнейшая форма организации — племя.

В качестве выдержки приведу отрывок из предисловия Александра Наумова к этой книге:

  • У сильного племени должен быть общий враг (надо знать своих конкурентов)
  • Сильное племя наделяет все свои кланы внутренним сходством (организационная культура)
  • У сильного племени есть важные стимулы и мотивы для дальнейшего развития (мотивация и стимулирование работников)
  • Критерии принадлежности к племени должны быть четкими и заслуживающими доверия (требования к сотрудникам)
  • Роли в племени очень отличаются от ролей в официальной организации (ролевой аспект групповой работы)
  • У сильного племени есть четкий и всем понятный механизм правосудия (управление конфликтами в организации)
  • Сильное племя требует от своих членов безусловной преданности (лояльность)
  • У сильного племени есть четко определенные роли, обязательства, ценности, полномочия, иерархическая система и субординация (организационная структура)
  • У выдающихся лидеров есть хорошие учителя, которые знают и умеют больше их (еще более выдающиеся лидеры)

Безнадежные проекты: откуда они берутся, и как с ними справляться?

Роман Осадченко No Comments

Чуть ранее я говорил о том, что в безнадежном проекте на первом месте — это определение приоритетов задач.

Наверняка многие задались вопросом — а откуда они вообще берутся — безнадежные проекты? Есть ответ! (Кстати, у Йордона такого вопроса нет. По его мнению, большинство проектов — безнадежные. А вот откуда берутся обычные (нормальные) проекты — вот это для него вопрос!)

Под безнадежным проектом понимается такой проект, параметры которого отклоняются от нормальных значений по крайней мере на 50%. Это обычно означает наличие одного или нескольких ограничений из перечисленных ниже:

  • План проекта уменьшен более чем наполовину по сравнению с нормальным расчетным планом; таким образом, проект, требующий в нормальных условиях 12 календарных месяцев, приходится выполнять за шесть или менее месяцев. Жесткая конкуренция на мировом рынке делает такую ситуацию наиболее распространенной.
  • Количество разработчиков уменьшено более чем наполовину по сравнению с действительно необходимым для проекта данного размера и масштаба. Это может быть результатом наивной веры в магические возможности новых CASE-средств или языков программирования либо сокращения штатов компании вследствие реорганизации, реинжиниринга и т. д.
  • Бюджет и связанные с ним ресурсы урезаны наполовину. Зачастую это происходит из-за сокращения компании или конкурентной борьбы за выгодный контракт. В итоге, например, может быть принято решение привлечь относительно недорогих и неопытных молодых разработчиков вместо опытных дорогостоящих специалистов.
  • Требования к функциям, возможностям, производительности и другим техническим характеристикам вдвое превышают значения, которые они могли бы иметь в нормальных условиях.

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

Для выполнения безнадежного проекта кроме определения приоритетов важна работа с персоналом. Эту тему я рассмотрю в следующий раз:)