Воспроизведение звука в 1С. Доступно и всерьез. 8.3.14

Доброго времени суток!

С момента предыдущей публикации infostart.ru/public/248770/ прошло много времени. И честно говоря, если вы запустите старую обработку на  Windows 10 и новой платформе  8.3.14, то звук уже не будет воспроизводиться. За это время многие уже перебрались на платформу выше 8.3.14, а значит, и html поле теперь всегда новое и это не зависит от режима совместимости 😉 и режима классических форм. Все старое перестало работать! Значит, есть основание сделать мир лучше!

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

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

Итак начнем с самых основ звука в html5 и тега audio (https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_audio_all):

Проблема номер один ссылка на файл в контексте сервера. Где должен быть расположен файл по отношению сервера 1С, локального компьютера ил того подобного.

Ответ 1: полная ссылка на звуковой файл типа — https://blog.sikuda.ru/1c/sound1c.mp3 — ВСЕ ПРЕКРАСНО и для Вэб-клиента это пока единственный вариант.

Ответ 2: Прописывание звука в тело html типа — src=’data:audio/mpeg;base64 НЕ ПРОХОДИТ 1С клиент.

Ответ 3: Указание ссылки Адрес во временном хранилище у меня НЕ ЗАРАБОТАЛО.

Ответ 4: Использовать временные локальные файлы на клиенте file:// вместе с ПолучитьИмяВременногоФайла — РАБОТАЕТ даже в тонком клиенте.

 

И вторая проблема с которой я столкнулся, это однократное воспроизведение звука. Я так понял это проблема кэширования самой 1С html поля с этим сложно бороться. Простое решение работает если перезагружать страницу с кодом:

Ну а тем кто хочет использовать элементы управления звуком и не получить в стандартном 1С черный прямоугольник, рекомендую воспользоваться сторонним плеером (мне понравился https://plyr.io/#audio и вторая обработка)

Ну вот и все. Тестируем, критикуем, комментируем. Если найдете лучший метод не стесняйтесь рассказывайте.

Готовые обработки выложены на Infostart https://infostart.ru/public/1259789/

 

Как разнести простых толстых и web-клиентов на разные сервера 1С.

Доброго времени суток!

Добавляет функциональные требования для серверов.

Для толстых клиентов:

Для тонких и web клиентов:

 

 

И самое главное не забываем применить эти требования.

 

1С . Работа с Файлами раньше и завтра…

Доброго времени суток!

Вначале была Файл и файл был у системы 1С и файл был прост…
Загрузка файла:

Сохранение файла:

Но потом пришел Интернет и разделение локального контента и серверного у 1C. Поэтому ввели РасширениеДляРаботыСФайлами для браузеров как костыль для старой работы. И потом понеслось…

Привет ПоместитьФайл и пока с ошибкой совместимости…

Загрузка по новому которая пока работает https://infostart.ru/public/812886/
И улучшения https://wonderland.v8.1c.ru/blog/uluchshenie-raboty-s-faylami-v-veb-kliente

То есть все равно осталось две функции. Зачем?

А на javascript передача файла на сервер выглядит следующим образом:

Но не стоит расстраиваться, через некоторое время мы снова будем переписывать на новые функции

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

https://wonderland.v8.1c.ru/blog/unifikatsiya-metodov-raboty-s-faylami/?sphrase_id=168400

Сертификаты и httpСоединение из 1С

Доброго времени суток!

Если вы из 1С 8.3 подключаетесь: В корпоративной сети не забудьте параметр ИспользоватьАутентификациюОС = Истина. Иначе localhost может не работать.

И потом посылаете GET запрос

Если у Вас на тестовых серверах поставлены бесплатные простые сертификаты, ну как обычно. То строго:

 

 

 

Добавить, обновить сотрудников в Битрикс24

Доброго времени суток!

Пришла тут задача по обновлению сотрудников для Битрикс24 из 1С. Так как сами сотрудники переносились из Active Directory и Подразделения тоже не хотелось бы перетаскивать из-за несоответствия
То грузим по UserData(JSON) из POST запроса прямо из 1С(в файл _update1C.php):

И передающий код 1С из своей конфигурации

 

 

 

Python, pip и сертификаты

Доброго времени суток!

Если при запуске pip В увидели что-то вроде Fatal error in launcher: Unable to create process using ‘»d:\python37\python.exe» «C:\python3\Scripts\pip.exe» ‘
Это Вы переносили Python с другого компьютера
надо запускать python -m pip …

И далее если у Вас начинает ругать на сертификаты
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)’))’: /simple/pyqt/

и далее Could not fetch URL https://pypi.org/simple/pyqt/

Надо указывать загрузку без проверки сертификата.
pip install —trusted-host=pypi.python.org —trusted-host=pypi.org —trusted-host=files.pythonhosted.org xlrd

Сделать резервную копию Битрикс? Да проще простого.

Доброго времени суток!

Если у вас не заработала восстановленная копия сайта Битрикс с локальной папки, Вы начинаете подозревать что резервная копия делается не всегда правильно.
Да это случается на больших сайтах, но зато стабильно.

Вот тут и начинаешь задумываться о параметрах выгрузки в Битрикс.

Стандартная 20 -1 не давала результата

Как описано тут https://web-aim.ru/blog/detail/Backup-problems-in-1%D0%A1-Bitrix/ попробовал 5/5 и о чудо действительно прошло на ура.

Вторая база выгрузилась с настройками 20/2 или это у же я перестраховался?

Отключаем NTML авторизацию на копии сайта Bitrix

Сделав копию корпоративного сайт, пытаемся его оживить и получаем переадресацию на порт 8890. Что это?

Это включена авторизация NLMT.

Намного колдовав и  найдя ответ в Интеренте 😉

Но затем надо преодолеть авторизацию и тут помогают жесткие методы SQL (есть доступ)
UPDATE b_user SET PASSWORD = MD5(‘123456’) WHERE ID=1;

Приятного всем тестирования!

Обновляем список пользователей по 1С в Битрикс

Доброго времени суток.

Возникла задача обновления пользователей на сайте Битрикс без стандартной загрузки из 1С.

Если отдельно Вы попытаетесь загрузить пользователей из 1С ЗУП то

  1. Они задвоятся
  2. Они попадут в новые подразделения, которые выгрузились из ЗУП

Как же найти то поле, которое отвечает за уникальность каждого элемента? После некоторых тестов выяснили, что это поле XML_ID у пользователей и подразделений. Оно равно уникальному идентификатору из 1С.

Напишем маленькие скрипты для тестирования:

Обязательный заголовок в страницу, чтобы понимались все внутренние объекты

Обновление поля XML_ID для подразделения id=475

Показ полей подразделения

Обновление поля для Пользователя id=2466

Показ полей пользователя

Ну и для красоты в конце

Ссылки: http://www.khtulhu.org.ua/veb-programmirovanie/590-bitriks-rabota-so-svojstvami-polzovatelya.html

Бан-баян бизнес процессов в Битрикс

Доброго времени суток!

Мне повезло и наше руководство расщедрилось на полную версию Битрикс24, а значит самое время потестировать Бизнес процессы.

Запускаем тестовую базу в тестовой настройке просто на локальном компьютере.

В недрах системы включаем бизнес-процессы и ловим их в разных местах.

Бизнес-процессы можно запустить из общего документа(согласование, ознакомление и др.) из процессов организации (пункт меню Процессы в ленте — кнопка Бизнес-Процессы) это стандартные шаблоны (Командировка, Отпуск и др) и бизнес процессы универсальных списков (нет стандартных шаблонов).

Вот с бизнес процессами организаций и есть один косячок не работы в тестовом примере.

Захотела красна девица Телегина Марианна в отпуск. Запускает бизнес процесс. И отправляется это желание ее руководителю Седову Всеволоду(из тестовой структуры Битрикс) , но он не может утвердить или отклонить задание:

И что с этим делать? Заходим в шаблон процесса. находим действие «Установка прав: утверждающему чтение» видим Право на операцию «Чтение» имеют: {=Variable:Approver} и внизу

Текущие права документа: Оставить  !!! СРОЧНО МЕНЯЕМ на Перезаписать и будет счастье.

 

 

Ссылки: Бизнес-процессы https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=57&TYPE=Y#LE3467

Видео: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=52&LESSON_ID=5454&LESSON_PATH=3922.5454