image_pdfimage_print

Какая боль, какая боль Linux 1C — понять и простить

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

Установка 1С на Linux не так проста как кажется
http://infostart.ru/public/142601/

Но это не все с чем Вы можете столкнуться

1. Ошибка загрузки библиотеки libWand.so по причине:Библиотека не обнаружена.
Может появиться на 64 битной версии клиента Linux. Оказалось, что для 32 битной платформы, библиотеки нужны тоже 32 битные(что вроде бы логично, но было упущено из виду)
Решение: установить 32 битный пакет imagemagick командой:
apt-get install imagemagick:i386

Если это не работает:  Лечится это запуском 1С с параметром окружения «LD_PRELOAD=libgomp.so.1»

2. Установка свободных шрифтов может и не понадобиться…
sudo apt-get install msttcorefonts
И директории sudo /opt/1C/v8.3/i386/utils/ в 8.3.8 уже нет.

3. Есть проблемы с выделением текста в конфигураторе. Замена драйверов видео иногда помогает решить эту проблему.
http://www.forum.mista.ru/topic.php?id=769153

Без расширения работы с файлами…

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

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

Вот код из «Библиотека стандартных подсистем»:

То есть БСП не работает в браузере без установки «Расширение для работы с файлами».

 

На самом деле загрузить файл возможно и без расширения.

Все работает с нормальным диалогом выбора файла.

А с сохранением все немного сложнее.
Красивый и правильный код на 8.3.7.1759 и выше требует расширения

Любой вызов ДиалогВыбораФайла требует установку «Расширение для работы с файлами» в 1С.

 

А если хочется работать в Chrome без расширения — то придется обновиться и попробовать написать так:

Код нормально работает.

Но в Internet Explorer диалог сохранения выглядит так

Сохранение файла в Internet Explorer

 

А в Firefox он будет выглядеть как

SaveFFnoModal

 

О сколько нам ошибок чудных готовят…

«Никому про наш секрет не говори,
А стекляшек разноцветных набери.
Ты зажмурься и три раза повернись,
А теперь глаза открой и удивись!»
— из детской песни.

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

 

1. Осторожно переход на 8.3.7. Конфигурация на 8.3.7 в режиме совместимости 8.2 никогда не вернется на старые версии!

ВыгрузкаЗагрузка1С

 

2. Опять мне пришлось столкнуться с проблемами идентицикации сервисов 1С. Благодаря 1С 8.3 у нас появились http сервисы, а методы работы для них остались такие же как для web-сервисов.

Также было замечано, что http сервисы возращают ошибку 403, а web-сервис ошибку 500. Ошибка исправлется переустановкой всех прав для пользователя 1С под которым они должны работать. И дальнейшем убирание ненужных, типа

Права1С-Сервисы“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — 
Сама 1С рекомендовала замену версии 8.3.6 (8.3.6.2237 и ниже) на версию 8.3.6.2299 платформы «1С:Предприятие 8» http://www.1c.ru/news/info.jsp?id=20420

Хорошая статья по авторизации http://www.bizkit.ru/2013/05/24/1722/

И пример на инфостарте http://infostart.ru/public/302876/

И моя старая статья http://sikuda.ru/archives/376

 

3. И немного позитива для 8.3.6 (при запуске программы из директории common)

1С не обнаружена
Это для тех кто забыл подправить ярлыки 1С.

 

4. Немного тестирования на 8.3.7

Вход в 1С
Это вообще одиночный фантом.

 

5. Медитации тестовых новых версий….

1c84down

1c84fulldown

Один из способов вызвать функцию 1С из JavaScript для обычных и управляемых форм

Оригинал статьи:
http://x1c.ru/kak_visvat_1c_is_js/

Это статья для Специалистов по 1С.

Иногда к нам обращаются с вопросом по поводу того, как из JavaScript’а в ПолеHTMLДокумента вызвать функцию 1С.

В этой статье мы приведем сразу 2 примера:

  • вызов функции JavaScript в ПолеHTMLДокумента из 1С
  • вызов функции 1С из JavaScript в ПолеHTMLДокумента

В первом случае функция вызывается достаточно просто:

ЭтаФорма.Элементы.хНТМЛ.Документ.parentWindow.MyFunction ();

Второй случай чуть сложнее. Суть его реализации заключается в следующем:

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

Дальше приведен код для управляемой формы, а для обычной формы код выглядит аналогично.

 

Формат 1C v8msg

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

Если Вы встретили в 1С формат v8msg

знайте это формат данных распределенных данных 1С.

Чтение таких данных осуществляется так:

Запись может осуществляться так:

При чем ПланамиОбмена можно пользоваться совместно и отдельно от выгрузки и загрузки.
При чтение: ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);

Раскрасить ТабличнуюЧасть в 1С

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

В простых формах мы перехватывали событие ПриПолученииДанных и изменяли оформление:

 

В Управляемых формах есть свойство формы УсловноеОформление. Можно его правильно настроить
http://infostart.ru/public/181336/

или использовать программно:

Прогресс не стоит на месте

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

Если у Вас не запускается в Linux apache в связке с 1С

sudo /etc/init.d/apache2 restart
* Restarting web server apache2 [fail]
* The apache2 configtest failed.
Output of config test was:
apache2: Syntax error on line 231 of /etc/apache2/apache2.conf: Cannot load /opt/1C/v8.3/i386/wsap22.so into server: /opt/1C/v8.3/i386/wsap22.so: undefined symbol: ap_rputs
Action ‘configtest’ failed.
The Apache error log may have more information.

Знайте прогресс не стоит на месте и версия 1С 8.3.6 (2015 год) и apache 2.4 (2012 год) несовместимы. Надо делать обновление до версии 2.2.

Возможно для обновления надо будет набрать:

sudo apt-get upgrade
apt-cache showpkg apache2 | grep 2.2
apt-get install apache2=2.2.22-1ubuntu1

How to check my current version of Linux Mint — cat /etc/linuxmint/info

Но практически все дистрибутивы уже не содержат apache 2.2, а выпиливать 2.4 и вставить 2.2 это надо быть фанатиком…

И последним гвоздем в ваше хорошее настроение будет то, что все нововведения от 1С

  • HTTP сервисы
  • REST интерфейс
  •   старые Web сервисы

Все работают через Веб сервер!

А кто сказал, что импортозамещение будет сделать  легко?

Регулярные выражения в 1С

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

Регулярные выражения в 1С — ИХ НЕТ!

А чем больше вы занимаетесь программированием, чем больше используете другие языки и среды тем больше Вы задаете вопрос: Почему?
Регулярные выражения это просто классика(http://www.unicode.org/reports/tr18/), но философия 1С уводит на другую дорогу. И пример этому в развитии платформы функций со строками: http://v8.1c.ru/o7/201408str/index.htm

А мы скажем спасибо Александр Орефкову за его внешнюю компоненту RexV8 http://infostart.ru/public/183084/

Для работы с юникодом V8 использует кроссплатформенную библиотеку ICU, которая помимо прочего, содержит и функционал по работе с регулярными выражениями. По какой-то неизвестной причине, 1С не «вытащила» этот функционал «наружу», и пользоваться им из языка 1С возможности нет.

Однако, как всегда, на помощь приходят ВК.

Представляю свою разработку, которая строит «мостик» из библиотеки ICU в язык 1С.

 

P.S.

Локальные решения проблемы для Windows(Новый COMОбъект(«Vbscript.RegExp»))  http://infostart.ru/public/64222/

Интересное тестирование с раскраской: http://infostart.ru/public/80508/

}{ождение по внешней компоненте 1С.

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

Если вы решили собрать внешную компоненту для 1С и уже изучили документацию 1С то самое время остановиться на некоторых нетривиальных моментах:

  1. Используем кодировку 1251. В Windows неявно, а в Linux makefile: -finput-charset=WINDOWS-1251
  2. Форматы динамических библиотек для разных компиляторов не совпадают, поэтому собираем компоненту в Windows только в Visual Studio(никакого MinGW),а Linux gcc.

 

Изучаем чужие опыты:

http://habrahabr.ru/post/191014/ — примеры с готовыми базами 1С для тестирования

http://infostart.ru/public/184119/ — how-to

 

Интересный пример написания внешних компонентов на Python(но у меня  не заработали процедуры…)

http://infostart.ru/public/186206/

 

К санкциям готов!

Доброго времени суток!
Санкции на иностранное коммерческое программное обеспечение все ближе и ближе. И надо же с этим что-то делать.

Итак подготавливаемся к импортозамещению коммерческого иностранного программного обеспчения.

Дистрибутив Linux Mint 17. Xfce. Windows 7,8,10
1С 8.3 локальные базы. Лицензирование NFC для разработчика или Бухгалтерия 3.0 измененной конфигурации.
wine для установки 1С дистрибутивов
В дистрибутиве:
LibreOffice 4.2.6.3 — Microsoft Office 2013
apache2
php 5.3
И конечно wordpress 4.0 для локальной копии блога.

Самый быстрый способ обновить платформу 1С на Linux:
1. Скачать Клиента и Сервер из 1С users.v8.1c.ru
2. Распаковать их в отдедьную папку
3. Запустить
cd Директория с пакетами
sudo dpkg -i *.deb
4. Установить HASP ключ для Linux (http://wiki.etersoft.ru/HASP?v=roe).
4. Попить кофейку.

И для начинающих — Windows версия 1С для обучения : http://online.1c.ru/catalog/programs/program/18610119