четверг, 11 января 2018 г.

Пробуем вылечить ошибку Outlook "Точка входа в процедуру CompareStringOrdinal не найдена в библиотеке dll kernel32.dll"

Ни для кого не секрет, что в корпоративной среде до сих пор нередко можно встретить снятую с поддержки Windows XP, при чём остальной софт может быть весьма современным. Итак, я столкнулся с такой ситуацией - на нескольких машинах стоит WinXP SP3 и Office 10. После недавнего обновления при попытке "запустить почту" пользователи стали получать ошибку "Точка входа в процедуру CompareStringOrdinal не найдена в библиотеке dll kernel32.dll"... краткое расследование показало, что недавно на проблемные машины установились обновления:
Обновление безопасности для Microsoft Excel 2010 (KB4011660) 32-разрядный выпуск;
Обновление безопасности для Microsoft Outlook 2010 (KB4011273) 32-разрядный выпуск;
Обновление безопасности для Microsoft Office 2010 (KB4011611) 32-разрядный выпуск;
Обновление безопасности для Microsoft Office 2010 (KB4011610) 32-разрядный выпуск;
Обновление безопасности для Microsoft Word 2010 (KB4011659) 32-разрядный выпуск;
Собственно, после их установки проблема и стала проявляться.
Если верить описанию метода (функции) CompareStringOrdinal, то он появился в Windows Vista и в XP поддерживаться не будет. Странно, что такое нововведение появилось лишь в недавнем обновлении офиса, но до него всё работало вполне нормально.
Локально решили откатом этих машин до состояния до установки обновлений, а вообще, в такой ситуации остро напрашивается обновление парка или хотя бы операционных систем.

UPD: вот, более дотошные коллеги утверждают, что к данной ошибке приводит конкретно обновление "Обновление безопасности для Microsoft Outlook 2010 (KB4011273) 32-разрядный выпуск", что, вообще-то, логично...

UPD2: поступила информация, что несколько позже вышло ещё одно обновление, вызывающее такую же ошибку: "Такую же ошибку вызывает установка Обновления безопасности для Microsoft Outlook 2010 (KB4011711) 32-разрядный выпуск. После его удаления Outlook 2010 заработал"

среда, 29 ноября 2017 г.

Чиним "Диспетчер Hyper-V": "RPC сервер недоступен. Не удается установить соединение..."

После обновления Windows 10 (в моём случае до 10.0.16299.64), при попытке подключиться к серверам виртуализации через Диспетчер Hyper-V я стал получать ошибку "RPC сервер недоступен. Не удается установить соединение...". Решение оказалось каким-то неочевидным и неожиданным - виноват был брандмауэр. Для исправления следует сделать следующее:
Параметры - Сеть и Интернет - Брандмауэр Windows - Дополнительные параметры; в отрывшемся окне "Монитор брандмауэра Защитника Windows" в разделе "Правила для входящих подключений" надо включить правило "Инструментарий управления Windows (асинхронный - входящий трафик)" для соответствующего профиля (в моём случае - "Домен").
После этой манипуляции всё заработало. Что примечательно - после отключения этого правила, работоспособность диспетчера Hyper-V сохранилась. Глубоко копать не хватило времени и мотивации, но подозреваю, что входящее подключение нужно было для обновления каких-то параметров оснастки диспетчера.
UPD 2018-04-10: на самом деле через какое-то время (пара недель) после отключения правила, оснастка опять стала выдавать ту же ошибку - видимо, предполагаемое обновление (и разрешающее правило) нужно достаточно часто.

четверг, 19 октября 2017 г.

В системе мониторинга Zabbix элемент данных vfs.file.exists[] отображает статус "не поддерживается"

Забавный сбой обнаружил сегодня при попытке заставить Zabbix отслеживать наличие файла-семафора на одном из серверов - после создания "Элемента данных" с типом "Zabbix agent" и "ключём" вида "vfs.file.exists[C:\Semaphores\Alert.txt]" в графе "Состояние" отображалось "Не поддерживается"... видимо, элементы данных обязаны находиться в какой-либо "Группе элементов данных", так как после выбора группы "Filesystems" всё заработало в лучшем виде.
Вывод: надо либо досконально изучать документацию на применяемые инструменты, либо звать компетентных людей... либо, идти тыком до победного =)

четверг, 4 мая 2017 г.

Настройка ККТ Штрих-Онлайн (Штрих-On-Line) для отправки данных в ОФД

Сегодня столкнулся с проблемой - на нескольких торговых точках недавно была произведена плановая замена фискальных регистраторов на Штрих-Он-лайн, но данные в ОФД не передавались. Благо, для передачи данных отведено 30 дней, но и они подходили к концу. В итоге, фискалы были сняты (на точках был санитарный день) и доставлены в офис для выяснения причин такого непотребного поведения и исправления ситуации. Как ни странно, внятной документации по настройке данных фискалов мне найти не удалось - инструкция годилась только для подключения проводов к полностью настроенным кассам, а на форумах мысли начинались с середины, или обрывались так и не дойдя до развязки.

понедельник, 28 ноября 2016 г.

Ошибка 1С УТ 11: Поле "Способ установки курса" не заполнено.

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

четверг, 3 ноября 2016 г.

Программа просмотра MXL (viewer and converter)

Практически каждый, кто пересекается с продуктами 1С время от времени задаётся вопросом "Чем открыть файл с расширением mxl?" - это формат сохранения табличных документов 1С по умолчанию. Вроде бы он называется "moxel", что бы это ни значило :-)
Сам регулярно (каждые пару-тройку лет) ищу просмотрщик mxl, так как за прошедшее время успеваю забыть, как он называется и откуда его можно скачать официально. А называется он "1С:Предприятие - Работа с файлами" и скачать его можно совершенно официально и бесплатно с сайта разработчика: http://v8.1c.ru/metod/fileworkshopdownload.htm
"Файлворкшоп" позволяет не только открывать для просмотра файлы *.mxl, но и редактировать содержимое, и, конечно, конвертировать в множество более популярных форматов - от Excel до PDF.

пятница, 25 декабря 2015 г.

Разработка печатной формы "счет-фактура" в формате pdf для сайта на php (tcpdf)

По большому счёту, web-разработкой я не занимаюсь, но иногда приходится "на коленке" писать отдельные модули. Последние полгода я занимаюсь созданием web-фронтэнда к учётной базе 1С для клиентов своего работодателя. О взаимодействии "web-сервисов" 1С и сайта я сейчас распространяться не планирую - может быть напишу отдельную заметку, а сейчас хотел поделиться своим опытом освоения вполне логичной темы развития клиентского портала, а именно - формированием печатных форм документов.Так как клиентский портал я решил писать на PHP (просто из-за того, что этот язык был мне более-менее знаком по моим предыдущим наработкам), то и библиотеки формирования pdf пришлось выбирать из доступных для этого языка. Из всего множества проектов я остановил свой выбор на tcpdf, во-первых, данный проект бесплатен (и для коммерческого использования), во-вторых, для базового "Hello, World!" достаточно написать буквально пару строк "обвязки".
Предлагаемые мной "бланки печатных форм" являются плодом моих размышлений, обмеров линейкой параметров бумажных печатных форм, чтения официальной документации и примеров с сайта проекта, а также помогла статья из первой десятки поисковой выдачи гугла по настройке кириллических шрифтов.